withTransaction

用途

通过Spring的事务抽象和程序块,允许对事务进行程序上的控制。

举例

Account.withTransaction { status ->
	def source = Account.get(params.from)
	def dest = Account.get(params.to)

def amount = params.amount.toInteger() if(source.active) { source.balance -= amount if(dest.active) { dest.amount += amount } else { status.setRollbackOnly() } } }

描述

withTransaction使用块或者闭包获得Spring的TransactionStatus对象,它可以被程序用来回滚事务。

更多信息可参考用户手册的Programmatic Transactions章节。